*****##########********#**##*#*#****+++++==+++++++++++*****+********#
*****#***+++*###**********###****+++++++++++++++++*******************
****###*+++*##%%*************+++++=++++++++++++*****+++++***********#
******##***#%%%%*++*##****++++***+++++*++++++++********+-+*+++****++*
#*******##*####*=-=************+++***++***+++****+-**++**********+++*
**#***********+====+**++**####**********************##*********+++++*
**************++===+=+*##*###*##*##***#*=*##******#*********++++++++*
********++++++++*+==+++**#%%#*+#%*+##**+=*#######*********++++++++++*
**************+*#********+*####**++++==*#%####*****==*****++++++++++*
***************#%**#####*##*#%##*******#########**++=====+++++++++++*
**************#%#**###%%################****************++++=====+++*
*********#####%%%%%%%###*############*****************************++*
****#######%%%#%%##############*************************************#
##%%#########################***********************************++++*
%%%%%%%##################**********************++++++****************
%%%%############**#*************************************************#
%%%%%%#########*****************************************************#
%%%%########********************************************************#
%########***********************************************************#
######**************************************************************#
###*****************************************************************#
#*******************************************************************#
%#########################################################%%%%%%%#%%%